== (равенство)

Доступность

Flash Player 5.

Использование

expression1 == expression2

Параметры

expression1,expression2 Числа, строки, булевые значения, переменные, объекты, массивы или функции.

Возвращает

Булевое значение.

Описание

Оператор (сравнения), проверяет два выражения на равенство. Результат true если выражения равны.

Определение равенства зависит от типа данных параметров :

При определении равенства, в случае если expression1 и expression2 имеют различные типы, ActionScript будет пытаться конвертировать тип expression2 к типу expression1.

Для дополнительной информации, смотрите "Автоматическое приведение типов данных" и "Старшинство и ассоциативность операторов" в Использовании ActionScript во Флэш .

Пример

В следующем примере оператор (==) используется с предложением if :

var a:String = "David", b:String = "David";
if (a == b) {
  trace("David is David");
}

Этот пример показывает результат сравнения смешанных типов данных :

var x:Number = 5;
var y:String = "5";
trace(x == y);  // выводится: true
var x:String = "5";
var y:String = "66";
trace(x == y);  // выводится: false
var x:String = "chris";
var y:String = "steve";
trace(x == y);  // выводится: false

Следующий пример показывает сравнение по ссылке. В первом примере сравниваются два массива с одинаковыми длиной и элементами. Оператор равенства возвращает false для этих двух массивов. Хотя массивы кажутся равными, сравнение по ссылке/для равенства/ требует для обоих ссылки на один и тот же массив. Во втором примере создаётся переменная thirdArray, которая ссылается на тот же массив, что и переменная firstArray. В этом случае оператор равенства возвращает true для этих двух массивов, так как две переменные ссылаются на один и тот же массив :

var firstArray:Array = new Array("one", "two", "three");
var secondArray:Array = new Array("one", "two", "three");
trace(firstArray == secondArray);  // будет выведено false

// Массивы считаются равными 
// если переменные/со ссылкой на массив/
// ссылаются на один и тот же массив.
var thirdArray:Array = firstArray;
trace(firstArray == thirdArray);  // будет выведено true

See also

! (логическое НЕТ), != (неравенство), !== (строгое неравенство), && (логическое И), || (логическое ИЛИ), === (строгое равенство)